//package com.ls.modules.hbase;
//
//import com.alibaba.nacos.common.utils.StringUtils;
//import lombok.extern.slf4j.Slf4j;
//import org.apache.hadoop.hbase.client.Result;
//import org.apache.hadoop.hbase.client.Scan;
//import org.apache.hadoop.hbase.filter.*;
//import org.apache.hadoop.hbase.util.Bytes;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.data.hadoop.hbase.HbaseTemplate;
//import org.springframework.stereotype.Service;
//
//import java.util.List;
//import java.util.stream.Collectors;
//
//@Service
//@Slf4j
//public class HBaseService {
//    @Autowired
//    private HbaseTemplate hbaseTemplate;
//
//
//    public List<Result> getRowKeyAndColumn(String tableName, String startRowkey, String stopRowkey, String column, String qualifier) {
//        FilterList filterList = new FilterList(FilterList.Operator.MUST_PASS_ALL);
//        if (StringUtils.isNotBlank(column)) {
//            log.debug("{}", column);
//            filterList.addFilter(new FamilyFilter(CompareFilter.CompareOp.EQUAL, new BinaryComparator(Bytes.toBytes(column))));
//        }
//        if (StringUtils.isNotBlank(qualifier)) {
//            log.debug("{}", qualifier);
//            filterList.addFilter(new QualifierFilter(CompareFilter.CompareOp.EQUAL, new BinaryComparator(Bytes.toBytes(qualifier))));
//        }
//        Scan scan = new Scan();
//        if (filterList.getFilters().size() > 0) {
//            scan.setFilter(filterList);
//        }
//        scan.setStartRow(Bytes.toBytes(startRowkey));
//        scan.setStopRow(Bytes.toBytes(stopRowkey));
//
//        return hbaseTemplate.find(tableName, scan, (rowMapper, rowNum) -> rowMapper);
//    }
//
//    public List<Result> getListRowkeyData(String tableName, List<String> rowKeys, String familyColumn, String column) {
//        return rowKeys.stream().map(rk -> {
//            if (StringUtils.isNotBlank(familyColumn)) {
//                if (StringUtils.isNotBlank(column)) {
//                    return hbaseTemplate.get(tableName, rk, familyColumn, column, (rowMapper, rowNum) -> rowMapper);
//                } else {
//                    return hbaseTemplate.get(tableName, rk, familyColumn, (rowMapper, rowNum) -> rowMapper);
//                }
//            }
//            return hbaseTemplate.get(tableName, rk, (rowMapper, rowNum) -> rowMapper);
//        }).collect(Collectors.toList());
//    }
//}
